Skip to content

l4re: change bit widths of file offset types#5173

Open
dybucc wants to merge 1 commit into
rust-lang:mainfrom
dybucc:l4re-file-offsets
Open

l4re: change bit widths of file offset types#5173
dybucc wants to merge 1 commit into
rust-lang:mainfrom
dybucc:l4re-file-offsets

Conversation

@dybucc

@dybucc dybucc commented Jun 16, 2026

Copy link
Copy Markdown
Contributor

Description

This PR deprecates a number of symbols from the unix/linux_like/l4re module. This has also come with further deprecations and modifications in other top-level modules.

At present, the definitions in upstream l4re-core are always 64-bit wide for the 64-bit targets we seem to support in this module. Though rustc only has support for x86_64 under this target OS.

Sources

Sources on the uClibc changes are documented in #5165. A regex search of the affected symbols on l4re-core's libc directory reveals no modifications in their patches would necessitate changes in this patch.

Checklist

  • Relevant tests in libc-test/semver have been updated
  • No placeholder or unstable values like *LAST or *MAX are included (see #3131)
  • Tested locally (cd libc-test && cargo test --target mytarget); especially relevant for platforms that may not be checked in CI

@rustbot label +stable-nominated

@rustbot rustbot added S-waiting-on-review stable-nominated This PR should be considered for cherry-pick to libc's stable release branch labels Jun 16, 2026
@dybucc dybucc force-pushed the l4re-file-offsets branch from a64dd66 to 66c2f42 Compare June 16, 2026 17:29
@dybucc dybucc changed the title refactor: change bitwidths of file off tys in l4re refactor: change bit widths of file offset types in L4Re Jun 17, 2026
@dybucc dybucc force-pushed the l4re-file-offsets branch from 66c2f42 to 244c00b Compare June 19, 2026 10:12
@rustbot

This comment has been minimized.

@dybucc dybucc changed the title refactor: change bit widths of file offset types in L4Re l4re: change bit widths of file offset types Jun 19, 2026
@dybucc dybucc force-pushed the l4re-file-offsets branch from 244c00b to f0bf0bf Compare June 20, 2026 09:52
@rustbot

rustbot commented Jun 20, 2026

Copy link
Copy Markdown
Collaborator

This PR was rebased onto a different main commit. Here's a range-diff highlighting what actually changed.

Rebasing is a normal part of keeping PRs up to date, so no action is needed—this note is just to help reviewers.

@dybucc dybucc force-pushed the l4re-file-offsets branch from f0bf0bf to caac209 Compare June 20, 2026 11:27
This patch makes a few changes to the file offset types and routines
that are made available under the `unix/linux_like/l4re` module.

The current upstream definitions under x86_64 and AArch64 are
unconditionally 64-bit. Then there's the fact there's only one target
officially supported by rustc under L4Re, and that's x86_64.
@dybucc dybucc force-pushed the l4re-file-offsets branch from caac209 to e16db76 Compare June 20, 2026 11:29
@tgross35

Copy link
Copy Markdown
Contributor

I'm pretty fine deprecating these since the platform has pretty low use, but we should figure out the other uclibc PR first.

@SnoozeThis #5165 -> remove label S-blocked, add label S-waiting-on-review

@SnoozeThis

Copy link
Copy Markdown

(https://snoozeth.is/u1Hjq3aITKU) I will wait until #5165 is merged and then add label S-waiting-on-review and remove label S-blocked.

@rustbot claim.

Comment on lines +18 to 24
#[deprecated(
since = "0.2.187",
note = "Use `fsblkcnt_t` instead. The unsuffixed type is defined in terms of the suffixed type \
upstream under the current target architecture (x86_64,) and support for suffixed \
types is phasing out in the `libc` crate."
)]
pub type fsblkcnt64_t = c_ulong;

@tgross35 tgross35 Jun 23, 2026

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The arch is wrong here but these deprecation messages are more complicated than needed anyway. Let's keep things simple and point elsewhere if more info is required, e.g.:

Use fsblkcnt_t instead. LFS64 aliases are being phased out, see #4805.

View changes since the review

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

S-blocked stable-nominated This PR should be considered for cherry-pick to libc's stable release branch

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants